package org.cheniy.domain.task.service;

import org.cheniy.domain.task.model.entity.TaskEntity;

import java.util.List;

/**
 * @author cheniy
 * @description 消息任务服务接口
 * @create 2025/3/19 22:02
 */
public interface ITaskService {

    /**
     * 查询发送MQ失败和超时1分钟未发送的MQ
     *
     * @return 未发送的任务消息列表10条
     */
    List<TaskEntity> queryNoSendMessageTaskList();

    /**
     * 发送MQ消息
     * @param taskEntity
     */
    void sendMessage(TaskEntity taskEntity);

    /**
     * 更新task状态为已完成
     * @param userId
     * @param messageId
     */
    void updateTaskSendMessageCompleted(String userId, String messageId);

    /**
     * 更新task状态为失败
     * @param userId
     * @param messageId
     */
    void updateTaskSendMessageFail(String userId, String messageId);

}
